﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
using Microsoft.Practices.Unity;
using Vit.Web;

namespace Vit.Mvc
{
    public abstract class AreaBase : AreaRegistration, IWebEvent
    {
        public virtual void Initialize()
        {
        }

        public virtual void Unload()
        {
        }

        public virtual void RegisterFilters(IFilterRegistry filterRegistry)
        {
        }

        public virtual void RegisterModelBinders(ModelBinderDictionary modelBinders)
        {
        }

        public virtual void RegisterWithContainer(IUnityContainer unity)
        {
        }

        public virtual void RegisterViewLocationFormats(VirtualPathProviderViewEngine viewEngine)
        {
        }

        #region IWebEvent Members

        public virtual void OnApplicationStart(HttpApplication application)
        {
        }

        public virtual void OnApplicationError(HttpApplication application)
        {
        }

        public virtual void OnApplicationEnd(HttpApplication application)
        {
        }

        public virtual void OnSessionStart(HttpApplication application)
        {
        }

        public virtual void OnSessionEnd(HttpApplication application)
        {
        }

        public virtual void OnBeginRequest(HttpApplication application)
        {
        }

        public virtual void OnEndRequest(HttpApplication application)
        {
        }

        #endregion
    }
}
